home *** CD-ROM | disk | FTP | other *** search
/ Aminet 3 / Aminet 3 - July 1994.iso / Aminet / dev / obero / Interfaces3_4.lha / Interfaces / KeyMapLib.mod < prev    next >
Text File  |  1994-03-05  |  1KB  |  46 lines

  1. (*
  2. (*
  3. **  Amiga Oberon Interface Module:
  4. **  $VER: KeyMapLib.mod 40.15 (28.12.93) Oberon 3.0
  5. **
  6. **   © 1993 by Fridtjof Siebert
  7. *)
  8. *)
  9.  
  10. MODULE KeyMapLib;
  11.  
  12. IMPORT
  13.   e  * := Exec,
  14.   ie * := InputEvent,
  15.   km * := KeyMap;
  16.  
  17. CONST
  18.   keyMapName * = "keymap.library";
  19.  
  20. VAR
  21.  
  22.   base * : e.LibraryPtr;  (* check base#NIL before you use any function! *)
  23.  
  24. (* ---   functions in V36 or higher  (Release 2.0)   --- *)
  25. (* --- REMEMBER: You are to check the version BEFORE you use this ! --- *)
  26.  
  27. PROCEDURE SetKeyMapDefault*{base,-30}(keyMap{8}     : km.KeyMapPtr);
  28. PROCEDURE AskKeyMapDefault*{base,-36}(): km.KeyMapPtr;
  29. PROCEDURE MapRawKey       *{base,-42}(event{8}      : ie.InputEventDummyPtr;
  30.                                       VAR buffer{9} : ARRAY OF CHAR;
  31.                                       length{1}     : LONGINT;
  32.                                       keyMap{10}    : km.KeyMapPtr): INTEGER;
  33. PROCEDURE MapANSI         *{base,-48}(string{8}     : ARRAY OF CHAR;
  34.                                       count{0}      : LONGINT;
  35.                                       VAR buffer{9} : ARRAY OF CHAR;
  36.                                       length{1}     : LONGINT;
  37.                                       keyMap{10}    : km.KeyMapPtr): LONGINT;
  38.  
  39.  
  40. BEGIN
  41.   base :=  e.OpenLibrary(keyMapName,37);
  42. CLOSE
  43.   IF base#NIL THEN e.CloseLibrary(base) END;
  44. END KeyMapLib.
  45.  
  46.